/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package zonasoft.Utilidades;

import java.awt.Component;
import java.awt.Container;
import java.awt.event.KeyEvent;
import javax.swing.JTextArea;
import javax.swing.JTextField;

/**
 *
 * @author JORGE
 */
public class Control {
    
       
    /**
     *me acepta solo numeros 
     */     
    public static void validaNumeros(java.awt.event.KeyEvent evt, JTextField campo, int numero) {
        int caracter = (int) evt.getKeyChar();
        char letra = ((char) caracter);
        
         int n = campo.getText().length() + 1;
         if(n > numero){evt.setKeyChar((char)KeyEvent.VK_CLEAR); campo.setToolTipText(("<html> <center> <h1> Advertencia </h1>"                  + "<h2 Style='color: red; font-style: italic;'> No puede superar la cantidad de caracteres permitidos </h2>"
                  + "<b>" + --n +" <br/> Es el maximo  para este campo </b> </center>"
                  + "<br/> Compruebe sus datos."));}

            //           solo numeros               retroceso       ctrl+c           ctrl + v          ctrl + x          supri                  -
        if (caracter >= 48 && caracter <= 57 || caracter == 8 || caracter == 3 || caracter == 22 || caracter == 24 || caracter == 27 || caracter == 45) {
        } else {
//        int numeropermitido = campo.getText().length();
            evt.setKeyChar((char) KeyEvent.VK_CLEAR);
            campo.setToolTipText(("<html> <center> <h1> Advertencia </h1>"
                    + "<h2 Style='color: red; font-style: italic;'> Ingrese numeros por favor </h2>"
                    + "<b> " + letra + "<br/> no es un numero </b> </center>"
                    + "<br/> Compruebe sus datos."));
        }
    }

    
    /**
     *me acepta la cantidad solicitada / texfield
     */
public static void validaCantidad(java.awt.event.KeyEvent evt, JTextField campo, int numero){
    int caracter = (int) evt.getKeyChar();
        char letra = (char) caracter;

             int n = campo.getText().length() + 1;
         if(n > numero){evt.setKeyChar((char)KeyEvent.VK_CLEAR); campo.setToolTipText(("<html> <center> <h1> Advertencia </h1>"                  + "<h2 Style='color: red; font-style: italic;'> No puede superar la cantidad de caracteres permitidos </h2>"
                  + "<b>" + --n +" <br/> Es el maximo  para este campo </b> </center>"
                  + "<br/> Compruebe sus datos."));}
        }
    

    /**
     *me acepta la cantidad solicitada /text area
     */
 public static void validaCantidadA(java.awt.event.KeyEvent evt, JTextArea campo, int numero){
    int caracter = (int) evt.getKeyChar();
        char letra = (char) caracter;

             int n = campo.getText().length() + 1;
         if(n > numero){evt.setKeyChar((char)KeyEvent.VK_CLEAR); campo.setToolTipText(("<html> <center> <h1> Advertencia </h1>"                  + "<h2 Style='color: red; font-style: italic;'> No puede superar la cantidad de caracteres permitidos </h2>"
                  + "<b>" + --n +" <br/> Es el maximo  para este campo </b> </center>"
                  + "<br/> Compruebe sus datos."));}
        }
 
 
    /**
     *me acepta solo letras
     */
public static void validaLetras(java.awt.event.KeyEvent evt, JTextField campo, int numero) {
        int caracter = (int) evt.getKeyChar();
        char letra = (char) caracter;

             int n = campo.getText().length() + 1;
         if(n > numero){evt.setKeyChar((char)KeyEvent.VK_CLEAR); campo.setToolTipText(("<html> <center> <h1> Advertencia </h1>"                  + "<h2 Style='color: red; font-style: italic;'> No puede superar la cantidad de caracteres permitidos </h2>"
                  + "<b>" + --n +" <br/> Es el maximo  para este campo </b> </center>"
                  + "<br/> Compruebe sus datos."));}


       //     mayusculas                            minusculas                        espacio                retrocero       ctr+c              ctrl+v            ctrl + x           supr           shift, alt
        if (caracter >= 65 && caracter <= 90 || caracter >=  97 && caracter <= 122 || caracter == 32 || caracter == 8 || caracter == 3 || caracter == 22 || caracter == 24 || caracter == 127 || caracter == 65535) {
           // evt.setKeyChar((char) KeyEvent.VK_CLEAR);
        } else {
            evt.setKeyChar((char) KeyEvent.VK_CLEAR);
            campo.setToolTipText(("<html> <center> <h1> Advertencia </h1>"
                    + "<h2 Style='color: red; font-style: italic;'> Ingrese letras por favor </h2>"
                    + "<b> " + letra + "<br/> no es una letra </b> </center>"
                    + "<br/> Compruebe sus datos."));
        }
    }


    /**
     *me validad los correos ???
     */
    public static void validaCorreo(java.awt.event.KeyEvent evt, JTextField campo, int numero){
    int caracter = (int) evt.getKeyChar();
        char letra = (char) caracter;

             int n = campo.getText().length() + 1;
         if(n > numero){
         evt.setKeyChar((char)KeyEvent.VK_CLEAR); campo.setToolTipText(("<html> <center> <h1> Advertencia </h1>"                  + "<h2 Style='color: red; font-style: italic;'> No puede superar la cantidad de caracteres permitidos </h2>"
                  + "<b>" + --n +" <br/> Es el maximo  para este campo </b> </center>"
                  + "<br/> Compruebe sus datos."));
         }
    }
    
        public static  void disableAndEnabledContainer(Container c,boolean accion) { 
        Component[] components = c.getComponents(); 
        for(int i=0; i<components.length; i++) { 
            components[i].setEnabled(accion); 
            if(components[i] instanceof Container) { 
                disableAndEnabledContainer((Container)components[i],accion); 
            } 
        }   
    }
    
    
    
}
